package com.kgame5.xtank3d.effect.myemitters {
import gs.TweenGroup;
import gs.TweenLite;
import gs.easing.Elastic;
import gs.easing.Linear;

import kgame5.enginex.enum.Layer3DEnum;
import kgame5.k3d.core.obj3d.node3d.Node3D;
import kgame5.k3d.util3d.Factory3D;

import com.kgame5.xtank3d.C;
import com.kgame5.xtank3d.effect.MyEmitter;

import flash.display.MovieClip;
import flash.text.TextField;

/**
 * @author kk
 * 先线性的起来，然后跳一下
 * 
 * MyMc_FlyTip
 * AddHP
 * AddDEF
 * AddMOV
 * AddAGI
 */
public class FlyTipEmitter extends MyEmitter {
	
	//加个延迟，避免和爆炸动画一起抢占处理时间
	private var secDelay:Number=0.1;
	
	//两个动画阶段的时间,秒
	private var secA:Number=0.3;
	private var secB:Number=1;
	
	public function FlyTipEmitter(hurt:int) {
		
		var md:Node3D=createMD(hurt);//创建md并设置好其中的数字
		
	
		md.life=(secDelay+secA+secB) * C.FRAME_RATE+5;
		
		//md.alphaSpeed=-1/md.life;
		
		//md.v3d_v.y=2;
		
		md_g.addChild(md);
		md_g.layerID=Layer3DEnum.LAYER_NULL;
	}

	private function createMD(hurt:int):Node3D{
		
		var sLinkID:String="MyMc_FlyTip_Hurt";
		var sTip:String=hurt+"";
			
		
		var md:Node3D=Factory3D.CreateSprite3D(sLinkID,false,false);
		var mc:MovieClip=md.getDO() as MovieClip;
		var tf:TextField=mc.tf as TextField;
		tf.text=sTip;
		
		
		//3,动画,就是跳一下的
	 
	 	//TweenGroup
	 	var t1:TweenLite=new TweenLite(md.posi, secA, {y:96,ease:Linear.easeOut,delay:secDelay});
	 	//var t2:TweenLite=new TweenLite(mc_skin.mc_digi,1,{y:150,ease:Linear.easeOut});
	 	var t3:TweenLite=new TweenLite(md.posi, secB, {y:64,ease:Elastic.easeOut});
	 
		var myGroup:TweenGroup = new TweenGroup([t1, t3]);
		myGroup.align = TweenGroup.ALIGN_SEQUENCE;
		
		md.extraObj=myGroup;//保持引用防止被垃圾回收
		
		return md;
	}
	
}//end of class
}

///////////////////////////////////
//private function createMD(vo:FlyTipVO):Node3D{
//		var sLinkID:String="MyMc_FlyTip" + vo.sAdd + vo.type;
//		var md:Node3D=Factory3D.CreateSprite3D(sLinkID);
//		var mc:MovieClip=md.getDO() as MovieClip;
//		
//		var sDigiLinkID:String="";
//		if(vo.sAdd=="Add"){
//			sDigiLinkID="MyMc_DigiAdd";
//		}else if(vo.sAdd=="Sub"){
//			switch(vo.type){
//				case "HP":
//				sDigiLinkID="MyMc_DigiSubHP";
//				break;
//				case "HPC":
//				sDigiLinkID="MyMc_DigiSubHPC";
//				break;
//				default:
//				sDigiLinkID="MyMc_DigiSub";
//				break;
//			}
//		}
//		
//		//2,数字
//		var sd:SmartDigiStrip=new SmartDigiStrip(mc.mc_digi,sDigiLinkID,3,true, vo.align);
//		sd.update(vo.value);
//		
//		
//		//3,动画,就是跳一下的
//	 
//	 	//TweenGroup
//	 	var t1:TweenLite=new TweenLite(md.hardVO.v3d_p, secA, {y:96,ease:Linear.easeOut,delay:secDelay});
//	 	//var t2:TweenLite=new TweenLite(mc_skin.mc_digi,1,{y:150,ease:Linear.easeOut});
//	 	var t3:TweenLite=new TweenLite(md.hardVO.v3d_p, secB, {y:64,ease:Elastic.easeOut});
//	 
//		var myGroup:TweenGroup = new TweenGroup([t1, t3]);
//		myGroup.align = TweenGroup.ALIGN_SEQUENCE;
//		
//		md.setProp(0, myGroup);//保持引用防止被垃圾回收
//		
//		
//		return md;
//	}

//private function createMD(vo:EffectVO):Node3D{
//		
//		var sLinkID:String="";
//		var sTip:String="---";
//		switch(vo.method){
//			case FlagGame.OP_METHOD_HURT:
//			sLinkID="MyMc_FlyTip_Hurt";
//			sTip = vo.value+"";
//			break;
//			case FlagGame.OP_METHOD_HURT_CRI:
//			sLinkID="MyMc_FlyTip_HurtCri";
//			sTip = vo.value+"";
//			break;
//			
//			case FlagGame.OP_METHOD_ADD_ATK:
//			sLinkID="MyMc_FlyTip_Add";
//			sTip="ATK+" + vo.value;
//			break;
//			case FlagGame.OP_METHOD_ADD_DEF:
//			sLinkID="MyMc_FlyTip_Add";
//			sTip="DEF+" + vo.value;
//			break;
//			case FlagGame.OP_METHOD_ADD_HP:
//			sLinkID="MyMc_FlyTip_Add";
//			sTip="HP+" + vo.value;
//			break;
//			case FlagGame.OP_METHOD_ADD_MOV:
//			sLinkID="MyMc_FlyTip_Add";
//			sTip="MOV+" + vo.value;
//			break;
//		}
//		
//		var md:Node3D=Factory3D.CreateSprite3D(sLinkID,false,false);
//		var mc:MovieClip=md.getDO() as MovieClip;
//		var tf:TextField=mc.tf as TextField;
//		tf.text=sTip;
//		
//		
//		//3,动画,就是跳一下的
//	 
//	 	//TweenGroup
//	 	var t1:TweenLite=new TweenLite(md.posi, secA, {y:96,ease:Linear.easeOut,delay:secDelay});
//	 	//var t2:TweenLite=new TweenLite(mc_skin.mc_digi,1,{y:150,ease:Linear.easeOut});
//	 	var t3:TweenLite=new TweenLite(md.posi, secB, {y:64,ease:Elastic.easeOut});
//	 
//		var myGroup:TweenGroup = new TweenGroup([t1, t3]);
//		myGroup.align = TweenGroup.ALIGN_SEQUENCE;
//		
//		md.extraObj=myGroup;//保持引用防止被垃圾回收
//		
//		return md;
//	}